﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace WMS.Seven.IQiData.Dto
{
    /// <summary>
    /// 采购退货DTO
    /// </summary>
    public class SaleDTO
    {
        public int Id { get; set; }
        /// <summary>
        /// 销售订单号
        /// </summary>
        [StringLength(30)]
        public string? SalesOrderCode { get; set; }

        /// <summary>
        /// 出库数
        /// </summary>
        public int? OutQuantity { get; set; }

        /// <summary>
        /// 退货数
        /// </summary>
        [StringLength(10)]
        public String? ReturnQuantity { get; set; }

        /// <summary>
        /// 退货数（出库）
        /// </summary>
        [StringLength(10)]
        public int? ReturnOutQuantity { get; set; }

        /// <summary>
        /// 销售时间
        /// </summary>
        public DateTime? CreateTime { get; set; }

        /// <summary>
        /// 制单人
        /// </summary>
        [StringLength(10)]
        public string? Maker { get; set; }

        /// <summary>
        /// 制单时间
        /// </summary>
        public DateTime? MakeTime { get; set; }

        /// <summary>
        /// 备注
        /// </summary>
        [StringLength(100)]
        public string? Remark { get; set; }

        /// <summary>
        /// 发货日期
        /// </summary>
        public DateTime? DeliveryDate { get; set; }

        /// <summary>
        /// 客户编号
        /// </summary>
        [StringLength(50)]
        public string? CustomerCode { get; set; }

        /// <summary>
        /// 客户名称
        /// </summary>
        [StringLength(10)]
        public string? CustomerName { get; set; }

        /// <summary>
        /// 联系人
        /// </summary>
        [StringLength(10)]
        public string? CustomerContact { get; set; }

        /// <summary>
        /// 电话
        /// </summary>
        [StringLength(20)]
        public string? CustomerPhone { get; set; }
        /// <summary>
        /// 数量
        /// </summary>
        public int? Quantity { get; set; }

        /// <summary>
        /// 产品编码（长度：40）
        /// </summary>
        [StringLength(40)]
        public string? ProductCode { get; set; }

        /// <summary>
        /// 采购单号
        /// </summary>
        [StringLength(40)]
        public string ProcurementCode { get; set; }

        /// <summary>
        /// 产品名称
        /// </summary>
        [StringLength(40)]
        public string ProductName { get; set; }

        /// <summary>
        /// 产品规格
        /// </summary>
        [StringLength(30)]
        public string ProductSpecification { get; set; }

        /// <summary>
        /// 类别
        /// </summary>
        [StringLength(10)]
        public string Category { get; set; }

        /// <summary>
        /// 存储单位
        /// </summary>
        [StringLength(10)]
        public string StorageUnit { get; set; }

        /// <summary>
        /// 单位
        /// </summary>
        [StringLength(10)]
        public string Unit { get; set; }

        /// <summary>
        /// 单价
        /// </summary>
        public double UnitPrice { get; set; }
        /// <summary>
        /// 单据类型
        /// </summary>
        [StringLength(10)]
        public string DocumentType { get; set; }
        /// <summary>
        /// 供应商编号
        /// </summary>
        [StringLength(40)]
        public string SupplierCode { get; set; }
        /// <summary>
        /// 供应商名称
        /// </summary>
        [StringLength(30)]
        public string SupplierName { get; set; }
        /// <summary>
        /// 创建日期
        /// </summary>
        public DateTime CreateDate { get; set; }
        /// <summary>
        /// 关联销售单号
        /// </summary>
        [StringLength(40)]
        public string SaleCode { get; set; }
        /// <summary>
        /// 收货日
        /// </summary>
        public DateTime ReceivingDate { get; set; }
        /// <summary>
        /// 客户名称
        /// </summary>
        [StringLength(10)]
        public string ClientName { get; set; }
        /// <summary>
        /// 联系人
        /// </summary>
        [StringLength(10)]
        public string Contact { get; set; }
        /// <summary>
        /// 电话
        /// </summary>
        [StringLength(20)]
        public string Phone { get; set; }
        /// <summary>
        /// 采购员
        /// </summary>
        [StringLength(10)]
        public string Buyer { get; set; }
        /// <summary>
        /// 采购时间
        /// </summary>
        public DateTime ProcurementDate { get; set; }

    }
}
